/**
 * Copyright (c) 2016-2019  All rights reserved.
 *
 *
 *
 * 版权所有，侵权必究！
 */

package io.yuncheng.common.utils;

/**
 * 常量
 *
 * @author Mark sunlightcs@gmail.com
 */
public class Constant {
	/** 超级管理员ID */
	public static final Long SUPER_ADMIN = 1L;
    /**
     * 默认枚举
     */
	public static final String DICT_DEFAULT_CODE = "1";
    /** 数据权限过滤 */
	public static final String SQL_FILTER = "sql_filter";
    /**
     * 当前页码
     */
    public static final String PAGE = "page";
    /**
     *
     */
    public static final String COMMA = ",";
    /**
     * 每页显示记录数
     */
    public static final String LIMIT = "limit";
    /**
     * 排序字段
     */
    public static final String ORDER_FIELD = "sidx";
    /**
     * 排序方式
     */
    public static final String ORDER = "order";
    /**
     *  升序
     */
    public static final String ASC = "asc";
    /**
     *
     */
    public final static String DATA  = "data";
    /**
     * 通过密评应用的数量
     */
    public final static String APP_NUM_TOTAL  = "appNumTotal";
    /**
     * 应用调用密码的总次数
     */
    public final static String CALL_TOTAL  = "callTotal";


    /**
     * 状态类型
     */
    public enum StatusType {
        /**
         * 禁用
         */
        OFF(0),
        /**
         * 正常
         */
        NORMAL(1);

        private int value;

        StatusType(int value) {
            this.value = value;
        }

        public int getValue() {
            return value;
        }
    }
    /**
     * 菜单类型
     */
    public enum DelFlagEnum {
        /**
         * 目录
         */
        DEL(-1),
        /**
         * 菜单
         */
        NORMAL(0);

        private int value;

        DelFlagEnum(int value) {
            this.value = value;
        }

        public int getValue() {
            return value;
        }
    }

    /**
     * deptType
     */
    public enum DeptTypeEnum {
        /**
         * 省
         */
        PROVINCE(1),
        /**
         * 市
         */
        CITY(2),
        /**
         * 一级机构
         */
        DEPT_1(3),
        /**
         * 二级机构
         */
        DEPT_2(4),
        /**
         * 应用
         */
        APP(99),

        OTHER(-1);

        private int value;

        DeptTypeEnum(int value) {
            this.value = value;
        }

        public int getValue() {
            return value;
        }
    }

    /**
     * deptType
     */
    public enum SysLevelEnum {
        /**
         *  省 todo 如果修改需要变换
         */
        PROVINCE(1),
        /**
         * 市
         */
        CITY(2);


        private int value;

        SysLevelEnum(int value) {
            this.value = value;
        }

        public int getValue() {
            return value;
        }
    }
    /**
     * AssessmentTypeEnum
     */
    public enum AssessmentTypeEnum {
        /**
         * 风评
         */
        WIND(1),
        /**
         * 密评-为空的时候是密评
         */
        CONFIDENTIAL(2);


        private int value;

        AssessmentTypeEnum(int value) {
            this.value = value;
        }

        public int getValue() {
            return value;
        }
    }
	/**
	 * 菜单类型
	 */
    public enum MenuType {
        /**
         * 目录
         */
    	CATALOG(0),
        /**
         * 菜单
         */
        MENU(1),
        /**
         * 按钮
         */
        BUTTON(2);

        private int value;

        MenuType(int value) {
            this.value = value;
        }

        public int getValue() {
            return value;
        }
    }

    /**
     * 定时任务状态
     */
    public enum ScheduleStatus {
        /**
         * 正常
         */
    	NORMAL(0),
        /**
         * 暂停
         */
    	PAUSE(1);

        private int value;

        ScheduleStatus(int value) {
            this.value = value;
        }

        public int getValue() {
            return value;
        }
    }

    /**
     * 云服务商
     */
    public enum CloudService {
        /**
         * 七牛云
         */
        QINIU(1),
        /**
         * 阿里云
         */
        ALIYUN(2),
        /**
         * 腾讯云
         */
        QCLOUD(3);

        private int value;

        CloudService(int value) {
            this.value = value;
        }

        public int getValue() {
            return value;
        }
    }

}
